package com.ruoyi.common.utils;

import cn.hutool.core.util.StrUtil;
import org.apache.commons.lang3.ObjectUtils;

import java.util.Map;

/**
 * @Author Jack_Lee
 * @Date 2024/7/18
 * 判空工具类
 */
public class ValueIsNullUtils {
    /**
     * 判断 Map 是否为空或其值是否为空字符串
     *
     * @param map 要检查的 Map
     * @return 如果 Map 为空或其值为空字符串，则返回 true；否则返回 false
     */
    public static boolean isEmptyOrContainsEmptyValue(Map<String, Object> map) {
        // 如果 Map 为空，返回 true
        if (ObjectUtils.isEmpty(map)) {
            return true;
        }

        // 遍历 Map 的每个值
        for (Object value : map.values()) {
            // 如果值是空或空字符串，返回 true
            if (value == null || StrUtil.isEmptyIfStr(value)) {
                return true;
            }
        }

        // Map 非空且所有值都非空
        return false;
    }
}
